package com.twoday;


import java.util.Scanner;

public class EatSystem {
    public static void main(String[] args) {
        /*
         * 点餐系统：
         *    登录，打印点菜系统的功能选项：点餐，打印菜单，结账，退款，评价，退出
         * */

        //用户存储注册用户
        User[] users = new User[5];


        Scanner scanner = new Scanner(System.in);
        System.out.println("*****欢迎进入HQ点菜系统*****");
        boolean isOk = true;
        while (isOk) {
            System.out.println("请选择您需要的操作：1：登录，2：注册，3：退出");
            int i = scanner.nextInt();
            switch (i) {
                case 1:
                    System.out.println("*****欢迎进入登录界面****");
                    System.out.println("请输入用户名：");
                    String uName = scanner.next();
                    System.out.println("请输入密码：");
                    String uPassworld = scanner.next();
                    if (uName.equals("user.name") && uPassworld.equals("user.password")) {
                        System.out.println("登录成功！");
                        System.out.println("请选择您需要的操作：1：点餐，2：打印菜单，3：结账，4：退款，5：评价，6：退出");
                        int i1 = scanner.nextInt();
                        switch (i1) {
                            case 1:
                                System.out.println("点餐...");
                                break;
                            case 2:
                                System.out.println("打印菜单...");
                                break;
                            case 3:
                                System.out.println("结账...");
                                break;
                            case 4:
                                System.out.println("退款...");
                                break;
                            case 5:
                                System.out.println("评价...");
                                break;
                            case 6:
                                System.out.println("退出...");
                                break;
                            default:

                        }

                    } else {
                        System.out.println("用户名或密码不对...");
                    }
                    break;
                case 2:
                    System.out.println("*****欢迎进入注册界面****");
                    //控制注册的循环结构
                    boolean isFalg = true;
                    while (isFalg) {
                        System.out.println("请输入用户名：");
                        String userName = scanner.next();
                        System.out.println("请输入密码：");
                        String userPassWord = scanner.next();

                        //给自定用户赋值
                        User user = new User();
                        user.name = userName;
                        user.password = userPassWord;

                        //存用户的数组
                        /*
                         * 1:不能重名
                         * 2：得放在为空的位置
                         * */
                        //1：不能重名---真假
                        boolean b = checkName(users, user);
                        if (!b) {
                            //2:得放在为空的位置---真假
                            addUser(users, user);
                        }
                        //方法：什么有参方法，什么无参方法，什么带返回值方法，什么不带返回值方法，
                        //什么是方法形参。什么是方法实参
                        System.out.println("是否要继续注册？(是/否)");
                        String next = scanner.next();
                        if (next.equals("否")) {
                            isFalg = false;
                        }
                    }
                    System.out.println("注册成功...");
                    break;
                case 3:
                    System.out.println("欢迎再次光临...");
                    isOk = false;
                    break;
                default:
            }
        }
    }

    //自定义方法
    public static boolean checkName(User[] users, User user) {
        for (int j = 0; j < users.length; j++) {
            if (user.name.equals(users[j].name)) {
                System.out.println("用户名已经存在");
                return false;
            }
        }
        return true;
    }


    public  static  boolean addUser(User[] users,User user){
        for (int k = 0; k <users.length ;k++) {
            if(users[k] ==null){
                users[k]=user;
               return true;
            }
        }
        return false;
    }
}
